Sewing data generating device and non-transitory computer-readable storage medium storing sewing data generating program

ABSTRACT

A sewing data generating device includes a processor and a memory. The memory stores computer-readable instructions that instruct the sewing data generating device to execute steps including obtaining original image data of a pattern to be sewn on a work cloth, identifying a central line of the image, identifying a sewing start point and a sewing end point, and generating sewing data based on the sewing start point and the sewing end point. The sewing start point is one of a first point at which the central line and a contour line of the image intersect and a point separated from the first point. The sewing end point is one of a second point at which the central line and the contour line of the image intersect and a point separated from the second point. The second point is different from the first point.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from JP2012-034781, filed Feb. 21, 2012, the content of which is hereby incorporated by reference in its entirety.

BACKGROUND

The present disclosure relates to a sewing data generating device that generates sewing data that enable a sewing machine to perform attractive sewing on both sides of a work cloth, and to a non-transitory computer-readable storage medium storing a sewing data generating program that generates the sewing data.

In known art, when a satin stitch pattern (hereinafter referred to as a “satin pattern”) is sewn on a work cloth by a zigzag sewing machine or an embroidery sewing machine, only an upper thread is exposed on a front surface of the work cloth and the upper thread and a lower thread are exposed on a back surface of the work cloth. Therefore, an appearance of the front surface of the work cloth is good, having a pattern in which adjacent upper threads are arranged substantially in close contact with one another, but an appearance of the back surface of the work cloth is bad, having a pattern in which the upper thread and the lower thread are mixed together. The back surface of the work cloth looks particularly bad when the upper thread and the lower thread have different colors. Incidentally, for example, with a known embroidery sewing machine, a technology has been disclosed in which the satin pattern is sewn in a state in which a tension of the upper thread is set higher than that of the lower thread such that the amount of the upper threads exposed on the front surface of the work cloth is reduced and substantially only the lower thread is exposed on the front surface. By applying the technology in an opposite manner, namely, by sewing the satin pattern in a state in which the tension of the lower thread is set higher than that of the upper thread, it is considered possible to expose substantially only the upper thread on the back surface of the work cloth while reducing the amount of the lower threads exposed on the back surface. When this type of sewing is performed, it is considered possible to sew a satin pattern having a good appearance on the work cloth, in which an appearance of the back surface is as good as that of the front surface.

When the above-described technology is used to make the satin pattern look good from the back surface of the work cloth, it is necessary to evenly pull the upper thread to the back surface of the work cloth from needle drop points located on both ends sides of the satin pattern. This is because, when the upper thread is not pulled evenly to the back surface of the work cloth, intersection points are positioned disproportionately toward one of the ends, and the appearance of the satin pattern deteriorates. Note that the intersection point shows a point at which the upper thread and the lower thread intersect with each other. Therefore, in order to evenly pull the upper thread from the needle drop points located on both the ends of the satin pattern, it is necessary to place both a needle drop point at which sewing is started and a needle drop point at which the sewing is ended substantially at the center of the needle drop points located on both the ends of the satin pattern. Note that, hereinafter the needle drop point at which the sewing is started is referred to as a sewing start point and the needle drop point at which the sewing is ended is referred to as a sewing end point.

However, with the above-described technology, since the sewing start point and the sewing end point are not taken into account, depending on a shape of the satin pattern, it is expected that it is not possible to sew, on the work cloth, the satin pattern whose appearance is good when seen from the back surface of the work cloth.

SUMMARY

It is an object of the present disclosure to provide a sewing data generating device and a non-transitory computer-readable storage medium storing a sewing data generating program that are capable of sewing, on a work cloth, a satin pattern that, even when seen from a back surface of the work cloth, has an attractive appearance such as that seen from the front surface of the work cloth.

Exemplary embodiments provide a sewing data generating device that includes a processor and a memory. The memory stores computer-readable instructions that instruct the sewing data generating device to execute steps including obtaining original image data of a pattern to be sewn on a work cloth, identifying a central line of the image by thinning the obtained image of the data, identifying a sewing start point and a sewing end point which are needle drop points when sewing the pattern by satin stitch, and generating sewing data based on the sewing start point and the sewing end point. The sewing start point is one of a first point at which the central line and a contour line of the image intersect and a point separated from the first point by a first predetermined distance. The sewing end point is one of a second point at which the central line and the contour line of the image intersect and a point separated from the second point by a second predetermined distance. The second point is different from the first point. The sewing data is for sewing the pattern on the work cloth by satin stitch from the sewing start point to the sewing end point.

Exemplary embodiments also provide a sewing data generating device that includes a processor and a memory. The memory stores computer-readable instructions that instruct a sewing machine to execute steps including obtaining existing sewing data for the sewing machine to sew a pattern to be sewn on a work cloth, identifying, by thinning one of an original image of the obtained existing sewing data and an image generated based on the existing sewing data, a central line of the image, identifying a sewing start point and a sewing end point which are needle drop points when sewing the pattern by satin stitch, and changing the sewing start point and the sewing end point included in the obtained existing sewing data into the sewing start point and the sewing end point. The sewing start point is one of a first point at which the central line and a contour line of the image intersect and a point separated from the first point by a first predetermined distance. The sewing end point is one of a second point at which the central line and the contour line of the image intersect and a point separated from the second point by a second predetermined distance. The second point is different from the first point.

Exemplary embodiments further provide a non-transitory computer-readable medium storing computer-readable instructions that, when executed, instruct a sewing data generating device to execute steps that includes obtaining original image data of a pattern to be sewn on a work cloth, identifying a central line of the image by thinning the obtained image of the data, identifying a sewing start point and a sewing end point which are needle drop points when sewing the pattern by satin stitch, and generating sewing data based on the sewing start point and the sewing end point. The sewing start point is one of a first point at which the central line and a contour line of the image intersect and a point separated from the first point by a first predetermined distance. The sewing end point is one of a second point at which the central line and the contour line of the image intersect and a point separated from the second point by a second predetermined distance. The second point is different from the first point. The sewing data is for sewing the pattern on the work cloth by satin stitch from the sewing start point to the sewing end point.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the disclosure will be described.

FIG. 1 is a block diagram showing an electrical configuration of a sewing data generating device 1;

FIG. 2 is an external view of an embroidery sewing machine 3;

FIG. 3 is a diagram showing a satin pattern;

FIG. 4 is a diagram showing a satin pattern 110 on a front surface of a work cloth;

FIG. 5 is a diagram showing the satin pattern 110 on a back surface of the work cloth;

FIG. 6 is a diagram showing a satin pattern 120 on the back surface of the work cloth when sewing is performed in a state in which a tension of a lower thread 114 is increased;

FIG. 7 is a diagram showing a satin pattern 130 as seen from the back surface side of the work cloth;

FIG. 8 is a flowchart showing main processing;

FIG. 9 is a flowchart showing analysis processing;

FIG. 10 is a flowchart showing data generating processing;

FIG. 11 is a diagram showing an image 150;

FIG. 12 is a diagram showing an image 156;

FIG. 13 is a diagram showing an image 161;

FIG. 14 is a diagram showing an image 171;

FIG. 15 is a diagram showing divided patterns 172 to 178;

FIG. 16 is a diagram showing a satin pattern 148 generated from the image 150.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

A structure of a sewing data generating device 1 will be described with reference to FIG. 1. The sewing data generating device 1 generates sewing data that are used when an embroidery pattern is sewn on a sewing target object using an embroidery sewing machine 3 (refer to FIG. 2) that will be described below. The sewing data include positional coordinates. The positional coordinates are coordinate information indicating positions of needle drop points that are used when sewing of the embroidery pattern is performed. The sewing target object is, for example, a work cloth (not shown in the figures).

The sewing data generating device 1 is a general-purpose device such as a personal computer, for example. The sewing data generating device 1 is provided with a central processing unit (CPU) 11. The CPU 11 controls the sewing data generating device 1. The CPU 11 is connected to a random access memory (RAM) 12, a read-only memory (ROM) 13 and an input/output (I/O) interface 14. The RAM 12 temporarily stores various types of data. The ROM 13 stores BIOS etc. The I/O interface 14 mediates the transmission and reception of data. The I/O interface 14 is connected to a hard disk device (HDD) 15, a mouse 22, a video controller 16, a key controller 17, a CD-ROM drive 18, a memory card connecter 23 and an image scanner 25. The sewing data generating device 1 may be provided with an external interface that is used to connect the sewing data generating device 1 to an external device or a network.

The video controller 16 is connected to a display 24. The key controller 17 is connected to a keyboard 21. A CD-ROM 54 can be inserted into the CD-ROM drive 18. For example, when a sewing data generating program is set up, first, the CD-ROM 54 is inserted into the CD-ROM drive 18, the CD-ROM 54 storing the sewing data generating program. Next, the sewing data generating program is read from the CD-ROM 54 and stored in the HDD 15. A memory card 55 can be inserted into the memory card connector 23. The CPU 11 can read out information stored on the memory card 55 and can also write information into the memory card 55.

The HDD 15 stores pattern data, setting information, sewing data, and programs etc. The pattern data are original image data of patterns to be embroidered. The setting data are information indicating various setting values that are used in main processing to be described below. The sewing data are data that are generated by the CPU 11 executing the sewing data generating program. The programs include a plurality of programs including the sewing data generating program executed by the CPU 11.

The embroidery sewing machine 3 will be described briefly with reference to FIG. 2. The embroidery sewing machine 3 sews an embroidery pattern based on the sewing data generated by the sewing data generating device 1. As shown in FIG. 2, the embroidery sewing machine 3 is provided with a bed portion 30, a pillar 36, an arm portion 38 and a head portion 39. The bed portion 30 extends having a right and left direction as a longitudinal direction with respect to a user. The pillar 36 extends upwardly from a right end portion of the bed portion 30. The arm portion 38 extends leftward from an upper end of the pillar 36. The head portion 39 is connected to a left end of the arm portion 38.

On the bed portion 30, it is possible to arrange an embroidery frame 41 that holds the work cloth (not shown in the figures) on which embroidery is performed. The embroidery frame 41 is moved to a predetermined position by a Y direction driving portion 42 and an X direction driving mechanism (not shown in the figures), the predetermined position being indicated by an X-Y coordinate system that is unique to the device. The X direction driving mechanism is housed in a main body case 43. A needle bar 35 equipped with a sewing needle 44 and a shuttle mechanism (not shown in the figures) are driven in accordance with the movement of the embroidery frame 41. By this structure, the embroidery pattern is sewn on the work cloth. The Y direction driving portion 42, the X direction driving mechanism and the needle bar 35 are controlled by a control device (not shown in the figures) that is built into the embroidery sewing machine 3. The control device includes a CPU etc.

The embroidery sewing machine 3 is provided with a memory card slot 37 on a side surface of the pillar 36. The memory card 55 can be inserted into and removed from the memory card slot 37. For example, the sewing data generated by the sewing data generating device 1 are stored in the memory card 55 via the memory card connector 23 (refer to FIG. 1). The memory card 55 in which the sewing data are stored is inserted into the memory card slot 37. The sewing data are read out from the memory card 55 and stored in the embroidery sewing machine 3. The control device (not shown in the figures) of the embroidery sewing machine 3 performs an embroidery operation based on the sewing data read out from the memory card 55. By this type of process, the embroidery sewing machine 3 can sew the embroidery pattern on the work cloth based on the sewing data generated by the sewing data generating device 1.

The embroidery sewing machine 3 can sew a satin stitch pattern (hereinafter referred to as a “satin pattern”) on the work cloth. The embroidery sewing machine 3 sets a tension of an lower thread to be higher than that of a upper thread, in order to sew, on the work cloth, the satin pattern that has a good appearance not only when it is seen from a front surface but also when it is seen from a back surface of the work cloth. In addition, the sewing data generating device 1 determines positions of a sewing start point and a sewing end point and generates the sewing data such that a well-balanced and attractive satin pattern can be sewn. The embroidery sewing machine 3 performs sewing based on the sewing data generated by the sewing data generating device 1. By performing the sewing, the embroidery sewing machine 3 can sew, on the work cloth, the satin pattern that has a good appearance not only when it is seen from the front surface but also when it is seen from the back surface of the work cloth. Further, at the same time, the embroidery sewing machine 3 can sew, on the work cloth, the well-balanced and attractive satin pattern in which intersection points between the upper thread and the lower thread are not positioned disproportionately toward one end of the satin pattern. The sewing of the satin pattern on the work cloth using the embroidery sewing machine 3 will be described below in detail.

As shown in FIG. 3, the satin pattern is a pattern in which adjacent upper threads 113 are substantially arranged in close contact with one another by making a feed amount of a zigzag stitch (a stitch pitch) smaller. However, to make explanations described below easier to understand, the satin pattern with a larger feed amount is schematically illustrated in FIG. 4 to FIG. 7. A satin pattern 110 shown in FIG. 4 and FIG. 5 is an example of the satin pattern sewn on the work cloth (not shown in the figures) when tensions of an upper thread 113 and a lower thread 114 are set at known (normal) setting values. FIG. 4 shows the satin pattern 110 on the front surface of the work cloth. FIG. 5 shows the satin pattern 110 on the back surface of the work cloth. As shown in FIG. 4, only the upper thread 113 is exposed on the front surface of the work cloth on which the satin pattern 110 is sewn. The upper thread 113 connects a plurality of needle drop points 111 and 112 in a zigzag manner to form stitches, the needle drop points 111 and 112 being located on both right and left ends of the satin pattern 110. On the other hand, as shown in FIG. 5, both the upper thread 113 and the lower thread 114 are exposed on the back surface of the work cloth on which the satin pattern 110 is sewn. The upper thread 113 is slightly pulled out to the back surface through the needle drop points 111 and 112 located on both the right and left ends of the satin pattern 110. The lower thread 114 connects both the upper thread 113 pulled out through the needle drop points 111 and the upper thread 113 pulled out through the needle drop points 112 at the intersection points, to form zigzag stitches. Note that in FIG. 5, the upper thread 113 is shown by a solid line and the lower thread 114 is shown by a dashed line to clearly distinguish the upper thread 113 and the lower thread 114. Note that the intersection point shows a point at which the upper thread 113 and the lower thread 114 intersect with each other. Further, with respect to the right and left direction of the satin pattern, right and left are reversed when seen from the back surface of the work cloth.

In the present embodiment, the satin pattern is sewn in a state in which the tension of the lower thread 114 is set higher than a known setting value. Then, as shown in FIG. 6, on the back surface of the work cloth of a satin pattern 120, an amount of the upper thread 113 pulled out to the back surface increases, and the intersection points between the upper thread 113 and the lower thread 114 are positioned generally at the center of the needle drop points 111 and 112 located at both the right and left ends of the satin pattern 120. In other words, the lower thread 114 extends in a generally linear manner in the up and down direction on paper. Here, since the actual satin pattern has a smaller stitch pitch, as described above, intervals between the needle drop points 111 and 112, which are located on both the right and left ends of the satin pattern 120, are narrower in the up and down direction on paper and the needle drop points 111 and 112 are placed substantially in contact with one other. Therefore, the lower thread 114 is almost hidden by the upper thread 113 that is substantially arranged in close contact, and it thus appears that only the upper thread 113 is exposed on the back surface.

A case will be examined in which sewing is performed with the sewing start point of the above-described satin pattern 120 being set at one of the needle drop points 111 and 112 located on both the right and left sides. For example, in FIG. 6, when the needle drop point 111 located on the right upper side in FIG. 6 is set as the sewing start point of the satin pattern 120, the intersection points between the upper thread 113 and the lower thread 114 on the back surface of the work cloth are positioned in the vicinity of the needle drop points 111 located on the right upper side in FIG. 6, Therefore, in the vicinity of the sewing start point, the amount of the upper thread 113 pulled out through the needle drop points 111 and the amount of the upper thread 113 pulled out through the needle drop points 112 become different. As a result, the intersection points are not positioned substantially at the center of the needle drop points 111 and the needle drop points 112, but are positioned disproportionately closer to the sewing start point. Further, in a similar manner, when the sewing end point is set at one of the right and left needle drop points 111 and 112, the intersection points between the upper thread 113 and the lower thread 114 are also positioned disproportionately closer to the sewing end point. As a result, the appearance of the satin pattern is poor in the vicinity of the sewing start point and the sewing end point.

On the other hand, as shown in FIG. 7, a case will be examined in which sewing is performed with a sewing start point 135 and a sewing end point 136 of a satin pattern 130 being set at the center of right and left needle drop points 131 and 132. The satin pattern 130 shown in FIG. 7 is seen from the back surface of the work cloth. In this way, when the sewing start point 135 and the sewing end point 136 are set at central positions between the right and left needle drop points 131 and 132, even in the vicinity of the sewing start point 135 and the sewing end point 136, the intersection points between an upper thread 133 and an lower thread 134 are not positioned disproportionately toward one side, but are positioned at the center of the right and left needle drop points 131 and 132. Therefore, in a case where sewing is performed with the sewing start point 135 and the sewing end point 136 of the satin pattern 130 being set at the center of the right and left needle drop points 131 and 132, it is possible to form the well-balanced and attractive satin pattern 130 even on the back surface of the work cloth.

In the present embodiment, the sewing data generating device 1 generates the sewing data that optimize the positions of the sewing start point and the sewing end point (hereinafter referred to as “start and end points”) such that the well-balanced and attractive satin pattern can be sewn. The generated sewing data are used by the embroidery sewing machine 3 that sews the satin pattern with the tension of the lower thread increased. When the satin pattern is sewn by the embroidery sewing machine 3, the upper thread is evenly pulled out through the right and left needle drop points by the lower thread with the increased tension. Therefore, on the back surface of the work cloth, substantially only the upper thread is exposed and the well-balanced and attractive satin pattern is sewn.

The main processing that is performed in the sewing data generating device 1 will be described with reference to FIG. 8 to FIG. 10. When an instruction to start sewing data generating processing for sewing the satin pattern is input, the CPU 11 performs the main processing in accordance with the sewing data generating program stored in the HDD 15 (refer to FIG. 1).

The CPU 11 reads out original pattern image data of the satin pattern from the HDD 15 and obtains the pattern data (step S11). The CPU 11 stores the obtained pattern data in the RAM 12. For example, the CPU 11 may display on the display 24 a list of images based on the pattern data stored in the HDD 15. A user may input a selected image by selecting a desired image among the images displayed on the display 24, using the keyboard 21. The CPU 11 may obtain the pattern data by reading out the pattern data indicating the input image from the HDD 15. Further, for example, the user may draw graphics using the mouse 22. The CPU 11 may obtain data indicating the input graphics as the pattern data. Further, for example, the user may capture an image using the image scanner 25. The CPU 11 may obtain data indicating the captured image as the pattern data.

The CPU 11 performs processing to analyze the image of the obtained pattern data (analysis processing, refer to FIG. 9) to identify positional coordinates of the start and end points (step S13). As shown in FIG. 9, the CPU 11 binarizes the image of the obtained pattern data (step S31). The CPU 11 performs thinning processing on the binarized image (step S33) and identifies a central line of the binarized image (step S35). The thinning processing is processing in which the central line having a width of one pixel is extracted by removing a black region from an outer edge of the binarized image.

For example, as shown in FIG. 11, in a case of an image 150 whose contour line is a rectangular shape, a linear central line 153 is identified by the thinning processing, the central line 153 passing through central points of opposing short sides 151 and 152. Further, for example, as shown in FIG. 12, in a case of an image 156 whose contour line is a rhombic shape, a linear central line 159 that passes through acute angled vertices 157 and 158 is identified. Further, for example, as shown in FIG. 13, in a case of an image 161 whose contour line is a square shape, linear central lines 162 and 163 that connect central points of opposing sides and linear central lines 164 and 165 that connect opposing vertices are identified.

As shown in FIG. 9, when at least one central line is identified by the thinning processing (YES at step S37), the CPU 11 identifies the intersection points between the central line identified at step 35 and the contour line of the image as a first point and a second point (step S39). When a plurality of central lines are identified, the CPU 11 selects one of the central lines and identifies the first point and the second point. The CPU 11 stores coordinate information of the identified first point and second point in the RAM 12. A contour line of the graphic drawn using the mouse 22 is identified from successive positional coordinates of the mouse 22 during a drag operation for drawing the graphic. A contour line of the image captured by the image scanner 25 is identified using a known edge detection method, for example, a method using a gradient of first derivation of brightness, and a method using a zero crossover point of second derivation of brightness, etc. The analysis processing is terminated, and the processing returns to the main processing (refer to FIG. 8).

For example, when the central line 153 of the image 150 shown in FIG. 11 is identified, the intersection point between the short side 151 of the contour line of the image 150 and the central line 153 is identified as a first point 154. The intersection point between the short side 152 of the contour line of the image 150 and the central line 153 is identified as a second point 155. Further, for example, when the central lines 162 to 164 of the image 161 shown in FIG. 13 are identified, one of the central lines is selected based on predetermined conditions stored in the HDD 15 in advance as the setting information. For example, when the central line 162 is selected, an intersection point 166 between the contour line of the image 161 and the central line 162 is identified as the first point, and an intersection point 167 is identified as the second point.

Note that, with respect to the above-mentioned predetermined conditions, an angle with respect to the work cloth or a distance between the first point and the second point may be specified as the conditions, for example. In the present embodiment, it is assumed that the central line having the greatest distance between the first point and the second point is selected. Further, the user may be allowed to select the central line.

On the other hand, as shown in FIG. 9, in a case where the central line cannot be identified by the thinning processing (NO at step S37), the CPU 11 divides the image into a plurality of images (step S41). The processing returns to step S33. The CPU 11 performs the thinning processing with respect to respective contour lines of the images that have been divided up (hereafter referred to as “divided images”) (step S33) and identifies the central lines of the divided images (step S35).

For example, as shown in FIG. 14, in a case where the shape of the contour line of the image 171 is a star shape having six acute-angled vertices, the CPU 11 determines that the central line cannot be determined by the thinning processing (NO at step S37, refer to FIG. 9). In this case, as shown in FIG. 15, the CPU 11 divides the image 171 into triangular-shaped divided images 172 to 177 including the six acute-angled vertices and a regular hexagonally-shaped divided image 178. The CPU 11 can identify central lines 181 to 187 of the divided images 172 to 178 (step S35, refer to FIG. 9) by performing the thinning processing to the respective divided images 172 to 178 (step S33, refer to FIG. 9).

As shown in FIG. 8, after the central line, the first point and the second point are identified by the analysis processing (step S13), the CPU 11 determines the needle drop points based on the identified central line, first point and second point and performs processing to generate the sewing data (data generating processing, refer to FIG. 10) (step S15). The data generating processing will be described with reference to FIG. 10. The CPU 11 refers to the image of the pattern data obtained at step S11 (refer to FIG. 8). Note that, when the image is divided at step S41 (refer to FIG. 9), the CPU 11 refers to one of the divided images. Based on the central line and the first point identified at step S39 (refer to FIG. 9), the CPU identifies the sewing start point using the following procedure.

A specific procedure for identifying the sewing start point will be described with reference to the image 150 in FIG. 11. When the central line 153, the first point 154 and the second point 155 are identified by the analysis processing (refer to FIG. 9), the CPU 11 identifies a point separated from the first point 154 by a predetermined distance X along the central line 153 in the direction toward the inside of the image 150. Next, the CPU 11 identifies intersection points 1541 and 1542 between a line segment, which passes through the identified point and is perpendicular to the central line 153, and the contour line of the image 150. Then, the CPU 11 calculates a width between the identified intersection points 1541 and 1542. Hereinafter, the width identified based on the first point will be referred to as a “start width”.

As shown in FIG. 10, the CPU 11 determines whether a start width 1543 (refer to FIG. 11) is greater than or equal to a predetermined threshold value (step S71). In a case where the start width 1543 is greater than or equal to the predetermined threshold value (YES at step S71), the CPU 11 identifies the first point 154 (refer to FIG. 11) as the sewing start point (step S73). The processing advances to step S77. On the other hand, in a case where the start width 1543 is less than the predetermined threshold value (NO at step S71), the CPU 11 identifies, as the sewing start point, a chosen point on a line segment including the first point 154 on the contour line of the image 150 between the intersection points 1541 and 1542 (refer to FIG. 11) (step S75). The processing advances to step S77.

When the start width 1543 is greater than or equal to the predetermined threshold value, there is possibility that the satin pattern may become distorted depending on a position of the sewing start point. The reason for this is that, in the present embodiment, since sewing is performed with the tension of the lower thread increased in comparison to a known level, in a case where a material of the work cloth is relatively soft, the work cloth is pulled by the lower thread and the position of the sewing start point may be displaced. In this way, in a case where the start width 1543 is greater than or equal to the predetermined threshold value, the position of the sewing start point may have an impact on the sewing of the satin pattern. On the other hand, in a case where the start width 1543 is less than the predetermined threshold value, the impact of the position of the sewing start point on the sewing of the satin pattern is small. Therefore, only in a case where the start width 1543 is greater than or equal to the predetermined threshold value, the CPU 11 identifies the first point as the sewing start point, such that the upper thread is evenly pulled out through the needle drop points by the lower thread.

Next, the CPU 11 identifies the sewing end point using a similar method as when the sewing start point is identified. As shown in FIG. 11, the CPU 11 identifies a point separated from the second point 155 by the predetermined distance X along the central line 153 in the direction toward the inside of the image 150. Next, the CPU 11 identifies intersection points 1544 and 1545 between a line segment, which passes through the identified point and is perpendicular to the central line 153, and the contour line of the image 150. Then, the CPU 11 calculates a width between the identified intersection points 1544 and 1545. Hereinafter, the width identified based on the second point will be referred to as an “end width”.

As shown in FIG. 10, the CPU 11 determines whether an end width 1546 (refer to FIG. 11) is greater than or equal to a predetermined threshold value (step S77). In a case where the end width 1546 is greater than or equal to the predetermined threshold value (YES at step S77), the CPU 11 identifies the second point 155 (refer to FIG. 11) as the sewing end point (step S79). The processing advances to step S83. On the other hand, in a case where the end width 1546 is less than the predetermined threshold value (NO at step S77), the CPU 11 identifies, as the sewing end point, a chosen point on a line segment including the second point 155 (step S81). The processing advances to step S83.

In a case where the end width 1546 is greater than or equal to the predetermined threshold value, a position of the sewing end point has a significant impact on an appearance of the satin pattern in a similar manner as in a case where the start width start width 1543 is greater than or equal to the predetermined threshold value. On the other hand, in a case where the end width 1546 is less than the predetermined threshold value, the impact on the appearance of the satin pattern from the position of the sewing end point is small. Therefore, the CPU 11 identifies the second point as the sewing end point (such that the upper thread is evenly pulled out through the needle drop points by the lower thread) only in a case where the end width 1546 is greater than or equal to the predetermined threshold value.

Note that, in a case where the start width 1543 is less than the predetermined threshold value, the chosen position of the sewing start point may be an intersection point between the line segment including the first point 154 and another line segment of the contour line or may be input by the user using the keyboard 21. The setting of the position can be applied in a similar manner to the chosen position of the sewing end point, in a case where the end width 1546 is less than the predetermined threshold value.

Next, based on the identified start and end points, the CPU 11 generates sewing data for sewing a section between the sewing start point and the sewing end point by satin stitch (step S83). For example, in the case of the rectangular image in FIG. 11, as shown in FIG. 16, the CPU 11 arranges a plurality of needle drop points at regular intervals on a long side 149. The interval between the needle drop points may be a value set in advance or may be input by the user. The CPU 11 identifies, as positional coordinates, coordinates indicating a position of the arranged needle drop point. The CPU 11 generates sewing data that include the identified positional coordinates (step S83). In FIG. 16, to make the explanation easier to understand, a satin pattern 148 is shown which is sewn based on the above-described sewing data.

Next, the CPU 11 generates reinforcement stitch data with respect to the identified start and end points (step S85). Reinforcement stitching is a known sewing method that is performed to prevent thread ends of the upper thread and the lower thread at the start and end points from fraying. For example, in the reinforcement stitching, stitches near the start and end points are doubly formed for the length of several stitches (2 to 3 stitches), or minute stitches are formed for the length of several stitches (2 to 3 stitches) at similar positions near the start and end points. The reinforcement stitch data are data that are used to form the above-described stitches. Here, depending on a shape of a sewing pattern, there may be a case in which the needle drop points of the satin pattern are concentrated in the vicinity of the sewing start point or the sewing end point. In this case, it is not always necessary to generate the reinforcement stitch data.

In a case where the image is divided at step 41 (refer to FIG. 9) the CPU 11 determines whether it has generated the sewing data corresponding to all the divided images (step S87). When there is any divided image remaining for which the sewing data are not yet generated (NO at step S87), the processing returns to step S71 to generate the sewing data corresponding to the remaining divided image. On the other hand, in a case where the sewing data corresponding to all the divided images have been generated (YES at step S87), the data generating processing is terminated and the processing returns to the main processing (refer to FIG. 8). As shown in FIG. 8, after the data generating processing (refer to FIG. 10) is terminated, the generated sewing data and the reinforcement stitch data are stored in the HDD 15 as the sewing data that enable the embroidery sewing machine 3 to perform sewing of the satin pattern (step S17). Then, the main processing is terminated.

Note that the sewing data stored in the HDD 15 are stored on the memory card 55 (refer to FIG. 1) that is inserted into the memory card connector 23 (refer to FIG. 1). The memory card 55, on which the sewing data are stored, is inserted into the memory card slot 37 (refer to FIG. 2) of the embroidery sewing machine 3 (refer to FIG. 2). The control device of the embroidery sewing machine 3 reads out the sewing data stored in the memory card 55 and stores the sewing data in the embroidery sewing machine 3. The control device of the embroidery sewing machine 3 performs the embroidery operation based on the sewing data read out from the memory card 55. The control device of the embroidery sewing machine 3 makes the tension of the lower thread higher than that of the upper thread. In this way, it is possible to sew, on the work cloth, the satin pattern that has a good appearance not only when it is seen from the front surface but also when it is seen from the back surface of the work cloth. Further, since in the sewing data, the start and end points are identified based on the central line identified by the thinning processing, the well-balanced and attractive satin pattern is sewn on the work cloth.

As described above, the sewing data generating device 1 generates the sewing data such that the start and end points of the satin pattern sewn by the sewing machine 3 are arranged in the vicinity of the central line. When the embroidery sewing machine 3 sews the satin pattern based on the generated sewing data, the lower thread extending from the sewing start point to the sewing end point is positioned substantially at the center of the needle drop points located on both the ends of the satin pattern. As a result, the lower thread can evenly pull out the upper thread through the needle drop points located on both the ends of the satin pattern. Therefore, the well-balanced and attractive satin pattern is sewn on the work cloth. In this way, the sewing data generating device 1 can easily generate the sewing data that enable the embroidery sewing machine 3 to sew the well-balanced and attractive satin pattern on the work cloth.

Further, the sewing data generating device 1 generates the reinforcement stitch data for at least one of the sewing start point and the sewing end point. When the embroidery sewing machine 3 sews the satin pattern on the work cloth based on the generated reinforcement stitch data, the upper thread and the lower thread are tightly fixed on the work cloth in the vicinity of the sewing start point and the sewing end point on the work cloth. In this way, the sewing data generating device 1 can appropriately generate the sewing data with which it is possible to sew, on the work cloth, the satin pattern in which end portions of the upper thread and the lower thread do not easily fray.

It should be noted that the sewing data generating device 1 can divide the image into a plurality of blocks as needed and can appropriately identify the central lines in the respective divided images. Therefore, the sewing data generating device 1 can easily identify the sewing start point and the sewing end point in an image having a complex shape and can generate the sewing data based on the identified sewing start point and sewing end point.

It should be noted that the present disclosure is not limited to the above-described embodiment and various modifications can be made thereto. In the above-described embodiment, the sewing data generating device 1 identifies the first point, the second point and the central point by analyzing the image indicated by the pattern data stored in the HDD 15 and generates the sewing data. However, the sewing data generating device 1 may change sewing data already known satin patterns (hereinafter referred to as “existing sewing data”) by replacing the positional coordinates of the start and end points included in the existing sewing data with the positional coordinates of the start and end points identified by the above-described method. Details are described below.

It is assumed that the sewing data are normally stored in advance in the HDD 15. The CPU 11 obtains the existing sewing data (step S11, refer to FIG. 8) by reading out the existing sewing data from the HDD 15. Note that the existing sewing data may be stored on the memory card 55 inserted in the memory card connector 23. The CPU 11 may obtain the existing sewing data by reading out the existing sewing data stored on the memory card 55. The CPU 11 identifies the central line, the first line and the second line (step S13, refer to FIG. 8) by thinning an original image of the obtained existing sewing data or by thinning an image generated based on the existing sewing data. The CPU 11 identifies the start point based on the identified central line and first point (step S73 and step S75, refer to FIG. 10) and identifies the end point based on the identified central line and the second point (step S79 and step S81, refer to FIG. 10). The CPU 11 changes the start and end points included in the existing sewing data based on the positional coordinates that indicate the identified start and end points. In this way, the user can use the existing sewing data effectively as the user can newly generate the sewing data using the existing sewing data.

In the description above, based on the sewing data generated by the sewing data generating device 1, the embroidery sewing machine 3 performs the sewing to form the satin pattern on the work cloth. However, the control device of the embroidery sewing machine 3 may generate the sewing data instead of the above-described sewing data generating device 1. Further, based on the generated sewing data, the control device of the embroidery sewing machine 3 may sew the satin pattern on the work cloth held by the embroidery frame 41 (refer to FIG. 2) by driving the Y direction driving portion 42 (refer to FIG. 2), the X direction driving mechanism (not shown in the figures), the needle bar 35 (refer to FIG. 2), the shuttle mechanism (not shown in the figures) etc. In this way, without using the sewing data generating device 1, the embroidery sewing machine 3 can independently sew the well-balanced and attractive satin pattern on the work cloth.

In the description above, the start and end points are determined by comparing the start width and the end width with the predetermined threshold values (refer to step S73, step S75, step S79 and step S81). However, the method of identifying the start and end points is not limited to this method. For example, the start and end points may be determined by calculating an average value of distances between the needle drop points located on both the ends and comparing the calculated average value with a predetermined threshold value.

Positions of the start and end points that are determined based on the central line are not limited to positions on the central line. For example, chosen points within a predetermined distance from the central line may be determined as the start and end points. 

What is claimed is:
 1. A sewing data generating device comprising: a processor; and a memory storing computer-readable instructions therein, wherein the computer-readable instructions instruct the sewing data generating device to execute steps comprising: obtaining original image data of a pattern to be sewn on a work cloth; identifying a central line of the image by thinning the obtained image of the data; identifying a sewing start point and a sewing end point which are needle drop points when sewing the pattern by satin stitch, the sewing start point being one of a first point at which the central line and a contour line of the image intersect and a point separated from the first point by a first predetermined distance, and the sewing end point being one of a second point at which the central line and the contour line of the image intersect, the second point being different from the first point and a point separated from the second point by a second predetermined distance; and generating, based on the sewing start point and the sewing end point, sewing data for sewing the pattern on the work cloth by satin stitch from the sewing start point to the sewing end point.
 2. The sewing data generating device according to claim 1, wherein identifying the central line of the image comprises: dividing the obtained image of the data into a plurality of blocks, for which the central line can be identified by thinning processing; and identifying the central line for each of the blocks.
 3. The sewing data generating device according to claim 1, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: generating reinforcement stitch data for at least one of the sewing start point and the sewing end point.
 4. The sewing data generating device according to claim 1, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: determining whether a start width is greater than or equal to a first predetermined threshold value, the start width being a distance between intersection points, the intersection points being points between a line segment, which is separated from the first point by a third predetermined distance along the central line in the direction toward the inside of the image and is perpendicular to the central line and the contour line of the image, and wherein identifying the sewing start point and the sewing end point comprises identifying the first point as the sewing start point, in a case where it is determined that the start width is greater than or equal to the first predetermined threshold value, and identifying a point separated from the first point by the first predetermined distance as the sewing start point, in a case where it is determined that the start width is less than the first predetermined threshold value.
 5. The sewing data generating device according to claim 1, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: determining whether an end width is greater than or equal to a second predetermined threshold value, the end width being a distance between intersection points, the intersection points being points between a line segment, which is separated from the second point by a third predetermined distance along the central line in the direction toward the inside of the image and is perpendicular to the central line and the contour line of the image, and wherein identifying the sewing start point and the sewing end point comprises: identifying the second point as the sewing end point, in a case where it is determined that the end width is greater than or equal to the second predetermined threshold value; and identifying a point separated from the second point by the second predetermined distance as the sewing end point, in a case where it is determined that the end width is less than the second predetermined threshold value.
 6. A sewing data generating device comprising: a processor; and a memory storing computer-readable instructions therein, wherein the computer-readable instructions instruct a sewing machine to execute steps comprising: obtaining existing sewing data for the sewing machine to sew a pattern to be sewn on a work cloth; identifying, by thinning one of an original image of the obtained existing sewing data and an image generated based on the existing sewing data, a central line of the image; identifying a sewing start point and a sewing end point which are needle drop points when sewing the pattern by satin stitch, the sewing start point being one of a first point at which the central line and a contour line of the image intersect and a point separated from the first point by a first predetermined distance, and the sewing end point being one of a second point at which the central line and the contour line of the image intersect, the second point being different from the first point and a point separated from the second point by a second predetermined distance; and changing the sewing start point and the sewing end point included in the obtained existing sewing data into the sewing start point and the sewing end point.
 7. The sewing data generating device according to claim 6, wherein identifying the central line of the image comprises: dividing the image into a plurality of blocks, for which the central line can be identified by thinning processing; and identifying the central line for each of the blocks.
 8. The sewing data generating device according to claim 6, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: changing reinforcement stitch data to correspond to the identified sewing start point and the identified sewing end point, in a case where the existing sewing data include the reinforcement stitch data.
 9. The sewing data generating device according to claim 6, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: determining whether a start width is greater than or equal to a first predetermined threshold value, the start width being a distance between intersection points, the intersection points being points between a line segment, which is separated from the first point by a third predetermined distance along the central line in the direction toward the inside of the image and is perpendicular to the central line and the contour line of the image, and wherein identifying the sewing start point and the sewing end point comprises identifying the first point as the sewing start point, in a case where it is determined that the start width is greater than or equal to the first predetermined threshold value, and identifying a point separated from the first point by the first predetermined distance as the sewing start point, in a case where it is determined that the start width is less than the first predetermined threshold value.
 10. The sewing data generating device according to claim 6, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: determining whether an end width is greater than or equal to a second predetermined threshold value, the end width being a distance between intersection points, the intersection points being points between a line segment, which is separated from the second point by a third predetermined distance along the central line in the direction toward the inside of the image and is perpendicular to the central line and the contour line of the image, and wherein identifying the sewing start point and the sewing end point comprises: identifying the second point as the sewing end point, in a case where it is determined that the end width is greater than or equal to the second predetermined threshold value; and identifying a point separated from the second point by the second predetermined distance as the sewing end point, in a case where it is determined that the end width is less than the second predetermined threshold value.
 11. A non-transitory computer-readable medium storing computer-readable instructions that, when executed, instruct a sewing data generating device to execute steps comprising: obtaining original image data of a pattern to be sewn on a work cloth; identifying a central line of the image by thinning the obtained image of the data; identifying a sewing start point and a sewing end point which are needle drop points when sewing the pattern by satin stitch, the sewing start point being one of a first point at which the central line and a contour line of the image intersect and a point separated from the first point by a first predetermined distance, and the sewing end point being one of a second point at which the central line and the contour line of the image intersect, the second point being different from the first point and a point separated from the second point by a second predetermined distance; and generating, based on the sewing start point and the sewing end point, sewing data for sewing the pattern on the work cloth by satin stitch from the sewing start point to the sewing end point.
 12. The non-transitory computer-readable medium according to claim 11, wherein identifying the central line of the image includes dividing the obtained image of the data into a plurality of blocks, for which the central line can be identified by thinning processing, and identifying the central line for each of the blocks.
 13. The non-transitory computer-readable medium according to claim 11, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: generating reinforcement stitch data for at least one of the sewing start point and the sewing end point.
 14. The non-transitory computer-readable medium according to claim 11, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: determining whether a start width is greater than or equal to a first predetermined threshold value, the start width being a distance between intersection points, the intersection points being points between a line segment, which is separated from the first point by a third predetermined distance along the identified central line in the direction toward the inside of the image and is perpendicular to the identified central line and the contour line of the image, and wherein identifying the sewing start point and the sewing end point comprises: identifying the first point as the sewing start point, in a case where it is determined that the start width is greater than or equal to the first predetermined threshold value; and identifying a point separated from the first point by the first predetermined distance as the sewing start point, in a case where it is determined that the start width is less than the first predetermined threshold value.
 15. The non-transitory computer-readable medium according to claim 11, wherein the computer-readable instructions further instruct the sewing data generating device to execute steps comprising: determining whether an end width is greater than or equal to a second predetermined threshold value, the end width being a distance between intersection points, the intersection points being points between a line segment, which is separated from the second point by a third predetermined distance along the identified central line in the direction toward the inside of the image and is perpendicular to the identified central line and the contour line of the image, and wherein identifying the sewing start point and the sewing end point comprises identifying the second point as the sewing end point, in a case where it is determined that the end width is greater than or equal to the second predetermined threshold value; and identifying a point separated from the second point by the second predetermined distance as the sewing end point, in a case where it is determined that the end width is less than the predetermined threshold value. 